using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Diagnostics;
using System.Web;
using System.Web.Services;

namespace AspNetForums.WebServices
{
	/// <summary>
	/// Summary description for UserInformation.
	/// </summary>
	[WebService(Namespace="http://channel9.msdn.com/webservices/")]
	public class UserInformation : System.Web.Services.WebService
	{
		public UserInformation()
		{
			//CODEGEN: This call is required by the ASP.NET Web Services Designer
			InitializeComponent();
		}

		#region Component Designer generated code
		
		//Required by the Web Services Designer 
		private IContainer components = null;
				
		/// <summary>
		/// Required method for Designer support - do not modify
		/// the contents of this method with the code editor.
		/// </summary>
		private void InitializeComponent()
		{
		}

		/// <summary>
		/// Clean up any resources being used.
		/// </summary>
		protected override void Dispose( bool disposing )
		{
			if(disposing && components != null)
			{
				components.Dispose();
			}
			base.Dispose(disposing);		
		}
		
		#endregion

		// WEB SERVICE EXAMPLE
		// The HelloWorld() example service returns the string Hello World
		// To build, uncomment the following lines then save and build the project
		// To test this web service, press F5

		[WebMethod]
		public bool UserExists(string username)
		{
			AspNetForums.Components.User user;
			user = null;

			try 
			{
				user = AspNetForums.Users.FindUserByUsername(username);
			}
			catch
			{
			}

			if (user != null)
				return true;
			else
				return false;
		}


		[WebMethod(CacheDuration=60)]
		public int UsersOnline()
		{
			return Users.GetUsersOnline(15).Count + AspNetForums.Components.ForumContext.Current.Statistics.CurrentAnonymousUsers;

		}
	}
}
